With the advent of virtualization of multiple session environments, virtual service providers face compatibility issues for computing devices that work in tandem with device management services (e.g., device drivers) designed with a single workstation mindset. Device management services control computing devices' access to various applications. By having a single operating system service multiple sessions in a virtual environment, computing devices, which have been designed assuming that a single operating system will service a single session, might not work when multiple sessions attempt to interact with the computing device or its device management services. In a single operating system, multi-session environment, the device management services residing at the server might not be able to access the computing device to control or manage the computing device in a specific session. Further, if the device management services are able to access these computing devices, use of the device management services creates conflicts between the different sessions since each session is writing to and reading from the same system resources without regard for the other sessions, which may lead the computing devices to stop working and/or cause incorrect outputs to users. While, in many cases, the computing device may be USB-based devices connected as a peripheral to the user's computer (e.g., a smartcard and smartcard reader), in other cases, the computing device may be a standalone device such as a drawing-enabled tablet that has its own device management service.
Current “solutions” involve costly modifications to the virtual architecture. Particularly, a virtual machine is created for each session/user with each virtual machine having a separate image of the entire operating system, associated databases (e.g., a registry), and a separate allocation of server resources (e.g., memory). However, creating a separate virtual machine including a separate image of the entire operating system results in use of a vast amount of disk space and much greater maintenance and management costs.